!function(e){var t={};function n(r){if(t[r])return t[r].exports;var c=t[r]={i:r,l:!1,exports:{}};return e[r].call(c.exports,c,c.exports,n),c.l=!0,c.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var c in e)n.d(r,c,function(t){return e[t]}.bind(null,c));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=2)}([function(e,t){e.exports=window.wp.apiFetch},function(e,t){e.exports=function(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}},function(e,t,n){"use strict";n.r(t);var r=n(1),c=n.n(r),a=function(e){return Math.abs(parseInt(e,10))},i=n(0),o=n.n(i),u=function(e,t){var n=new Map([["init","init"],["validation_failed","invalid"],["acceptance_missing","unaccepted"],["spam","spam"],["aborted","aborted"],["mail_sent","sent"],["mail_failed","failed"],["submitting","submitting"],["resetting","resetting"]]);n.has(t)&&(t=n.get(t)),Array.from(n.values()).includes(t)||(t=(t=t.replace(/[^0-9a-z]+/i," ").trim()).replace(/\s+/,"-"),t="custom-".concat(t));var r=e.getAttribute("data-status");return e.wpcf7.status=t,e.setAttribute("data-status",t),e.classList.add(t),r&&r!==t&&e.classList.remove(r),t},s=function(e,t,n){var r=new CustomEvent("wpcf7".concat(t),{bubbles:!0,detail:n});"string"==typeof e&&(e=document.querySelector(e)),e.dispatchEvent(r)};function f(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=new FormData(e);t.submitter&&t.submitter.name&&n.append(t.submitter.name,t.submitter.value);var r={contactFormId:e.wpcf7.id,pluginVersion:e.wpcf7.pluginVersion,contactFormLocale:e.wpcf7.locale,unitTag:e.wpcf7.unitTag,containerPostId:e.wpcf7.containerPost,status:e.wpcf7.status,inputs:Array.from(n,(function(e){var t=e[0],n=e[1];return!t.match(/^_/)&&{name:t,value:n}})).filter((function(e){return!1!==e})),formData:n},c=function(t){var n=document.createElement("li");n.setAttribute("id",t.error_id),t.idref?n.insertAdjacentHTML("beforeend",'').concat(t.message,"")):n.insertAdjacentText("beforeend",t.message),e.wpcf7.parent.querySelector(".screen-reader-response ul").appendChild(n)},a=function(t){var n=e.querySelector(t.into),r=n.querySelector(".wpcf7-form-control");r.classList.add("wpcf7-not-valid"),r.setAttribute("aria-invalid","true"),r.setAttribute("aria-describedby",t.error_id);var c=document.createElement("span");c.setAttribute("class","wpcf7-not-valid-tip"),c.setAttribute("aria-hidden","true"),c.insertAdjacentText("beforeend",t.message),n.appendChild(c),r.closest(".use-floating-validation-tip")&&(r.addEventListener("focus",(function(e){c.setAttribute("style","display: none")})),c.addEventListener("mouseover",(function(e){c.setAttribute("style","display: none")})))};o()({path:"contact-form-7/v1/contact-forms/".concat(e.wpcf7.id,"/feedback"),method:"POST",body:n,wpcf7:{endpoint:"feedback",form:e,detail:r}}).then((function(t){var n=u(e,t.status);return r.status=t.status,r.apiResponse=t,["invalid","unaccepted","spam","aborted"].includes(n)?s(e,n,r):["sent","failed"].includes(n)&&s(e,"mail".concat(n),r),s(e,"submit",r),t})).then((function(t){t.posted_data_hash&&(e.querySelector('input[name="_wpcf7_posted_data_hash"]').value=t.posted_data_hash),"mail_sent"===t.status&&e.reset(),t.invalid_fields&&(t.invalid_fields.forEach(c),t.invalid_fields.forEach(a)),e.wpcf7.parent.querySelector('.screen-reader-response [role="status"]').insertAdjacentText("beforeend",t.message),e.querySelectorAll(".wpcf7-response-output").forEach((function(e){e.innerText=t.message}))})).catch((function(e){return console.error(e)}))}o.a.use((function(e,t){if(e.wpcf7&&"feedback"===e.wpcf7.endpoint){var n=e.wpcf7,r=n.form,c=n.detail;l(r),s(r,"beforesubmit",c),u(r,"submitting")}return t(e)}));var l=function(e){e.wpcf7.parent.querySelector('.screen-reader-response [role="status"]').innerText="",e.wpcf7.parent.querySelector(".screen-reader-response ul").innerText="",e.querySelectorAll(".wpcf7-not-valid-tip").forEach((function(e){e.remove()})),e.querySelectorAll(".wpcf7-form-control").forEach((function(e){e.setAttribute("aria-invalid","false"),e.removeAttribute("aria-describedby"),e.classList.remove("wpcf7-not-valid")})),e.querySelectorAll(".wpcf7-response-output").forEach((function(e){e.innerText=""}))};function p(e){var t=new FormData(e),n={contactFormId:e.wpcf7.id,pluginVersion:e.wpcf7.pluginVersion,contactFormLocale:e.wpcf7.locale,unitTag:e.wpcf7.unitTag,containerPostId:e.wpcf7.containerPost,status:e.wpcf7.status,inputs:Array.from(t,(function(e){var t=e[0],n=e[1];return!t.match(/^_/)&&{name:t,value:n}})).filter((function(e){return!1!==e})),formData:t};o()({path:"contact-form-7/v1/contact-forms/".concat(e.wpcf7.id,"/refill"),method:"GET",wpcf7:{endpoint:"refill",form:e,detail:n}}).then((function(t){"sent"===n.status?u(e,"mail_sent"):u(e,"init"),n.apiResponse=t,s(e,"reset",n)})).catch((function(e){return console.error(e)}))}o.a.use((function(e,t){if(e.wpcf7&&"refill"===e.wpcf7.endpoint){var n=e.wpcf7,r=n.form;n.detail,l(r),u(r,"resetting")}return t(e)}));var d=function(e,t){var n=function(n){var r=t[n];e.querySelectorAll('input[name="'.concat(n,'"]')).forEach((function(e){e.value=""})),e.querySelectorAll("img.wpcf7-captcha-".concat(n)).forEach((function(e){e.setAttribute("src",r)}));var c=/([0-9]+)\.(png|gif|jpeg)$/.exec(r);c&&e.querySelectorAll('input[name="_wpcf7_captcha_challenge_'.concat(n,'"]')).forEach((function(e){e.value=c[1]}))};for(var r in t)n(r)},v=function(e,t){var n=function(n){var r=t[n][0],c=t[n][1];e.querySelectorAll(".wpcf7-form-control-wrap.".concat(n)).forEach((function(e){e.querySelector('input[name="'.concat(n,'"]')).value="",e.querySelector(".wpcf7-quiz-label").textContent=r,e.querySelector('input[name="_wpcf7_quiz_answer_'.concat(n,'"]')).value=c}))};for(var r in t)n(r)};function m(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function b(e){var t=new FormData(e);e.wpcf7={id:a(t.get("_wpcf7")),status:e.getAttribute("data-status"),pluginVersion:t.get("_wpcf7_version"),locale:t.get("_wpcf7_locale"),unitTag:t.get("_wpcf7_unit_tag"),containerPost:a(t.get("_wpcf7_container_post")),parent:e.closest(".wpcf7")},e.querySelectorAll(".wpcf7-submit").forEach((function(e){e.insertAdjacentHTML("afterend",'')})),function(e){e.querySelectorAll(".wpcf7-exclusive-checkbox").forEach((function(t){t.addEventListener("change",(function(t){var n=t.target.getAttribute("name");e.querySelectorAll('input[type="checkbox"][name="'.concat(n,'"]')).forEach((function(e){e!==t.target&&(e.checked=!1)}))}))}))}(e),function(e){e.querySelectorAll(".has-free-text").forEach((function(t){var n=t.querySelector("input.wpcf7-free-text"),r=t.querySelector('input[type="checkbox"], input[type="radio"]');n.disabled=!r.checked,e.addEventListener("change",(function(e){n.disabled=!r.checked,e.target===r&&r.checked&&n.focus()}))}))}(e),function(e){e.querySelectorAll(".wpcf7-validates-as-url").forEach((function(e){e.addEventListener("change",(function(t){var n=e.value.trim();n&&!n.match(/^[a-z][a-z0-9.+-]*:/i)&&-1!==n.indexOf(".")&&(n="http://"+(n=n.replace(/^\/+/,""))),e.value=n}))}))}(e),function(e){if(e.querySelector(".wpcf7-acceptance")&&!e.classList.contains("wpcf7-acceptance-as-validation")){var t=function(){var t=!0;e.querySelectorAll(".wpcf7-acceptance").forEach((function(e){if(t&&!e.classList.contains("optional")){var n=e.querySelector('input[type="checkbox"]');(e.classList.contains("invert")&&n.checked||!e.classList.contains("invert")&&!n.checked)&&(t=!1)}})),e.querySelectorAll(".wpcf7-submit").forEach((function(e){e.disabled=!t}))};t(),e.addEventListener("change",(function(e){t()})),e.addEventListener("wpcf7reset",(function(e){t()}))}}(e),function(e){var t=function(e,t){var n=a(e.getAttribute("data-starting-value")),r=a(e.getAttribute("data-maximum-value")),c=a(e.getAttribute("data-minimum-value")),i=e.classList.contains("down")?n-t.value.length:t.value.length;e.setAttribute("data-current-value",i),e.innerText=i,r&&r form").forEach((function(e){return wpcf7.init(e)}))}))}]); (function($){ "use strict"; $('.get_service').on('click', function(){ $('html, body').animate({ scrollTop: $(".tab-content").offset().top }, 1000); }); })(jQuery); !function(e){var n=!1;if("function"==typeof define&&define.amd&&(define(e),n=!0),"object"==typeof exports&&(module.exports=e(),n=!0),!n){var o=window.Cookies,t=window.Cookies=e();t.noConflict=function(){return window.Cookies=o,t}}}(function(){function e(){for(var e=0,n={};e1){if("number"==typeof(i=e({path:"/"},t.defaults,i)).expires){var a=new Date;a.setMilliseconds(a.getMilliseconds()+864e5*i.expires),i.expires=a}i.expires=i.expires?i.expires.toUTCString():"";try{c=JSON.stringify(r),/^[\{\[]/.test(c)&&(r=c)}catch(m){}r=o.write?o.write(r,n):encodeURIComponent(String(r)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent),n=(n=(n=encodeURIComponent(String(n))).replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent)).replace(/[\(\)]/g,escape);var f="";for(var s in i)i[s]&&(f+="; "+s,!0!==i[s]&&(f+="="+i[s]));return document.cookie=n+"="+r+f}n||(c={});for(var p=document.cookie?document.cookie.split("; "):[],d=/(%[0-9A-Z]{2})+/g,u=0;u'),i(".password-input").append(''),i(".show-password-input").click(function(){i(this).toggleClass("display-password"),i(this).hasClass("display-password")?i(this).siblings(['input[name="password"]','input[type="password"]']).prop("type","text"):i(this).siblings('input[name="password"]').prop("type","password")})}); jQuery(function(r){if("undefined"==typeof wc_cart_fragments_params)return!1;var t=!0,o=wc_cart_fragments_params.cart_hash_key;try{t="sessionStorage"in window&&null!==window.sessionStorage,window.sessionStorage.setItem("wc","test"),window.sessionStorage.removeItem("wc"),window.localStorage.setItem("wc","test"),window.localStorage.removeItem("wc")}catch(f){t=!1}function a(){t&&sessionStorage.setItem("wc_cart_created",(new Date).getTime())}function s(e){t&&(localStorage.setItem(o,e),sessionStorage.setItem(o,e))}var e={url:wc_cart_fragments_params.wc_ajax_url.toString().replace("%%endpoint%%","get_refreshed_fragments"),type:"POST",data:{time:(new Date).getTime()},timeout:wc_cart_fragments_params.request_timeout,success:function(e){e&&e.fragments&&(r.each(e.fragments,function(e,t){r(e).replaceWith(t)}),t&&(sessionStorage.setItem(wc_cart_fragments_params.fragment_name,JSON.stringify(e.fragments)),s(e.cart_hash),e.cart_hash&&a()),r(document.body).trigger("wc_fragments_refreshed"))},error:function(){r(document.body).trigger("wc_fragments_ajax_error")}};function n(){r.ajax(e)}if(t){var i=null;r(document.body).on("wc_fragment_refresh updated_wc_div",function(){n()}),r(document.body).on("added_to_cart removed_from_cart",function(e,t,r){var n=sessionStorage.getItem(o);null!==n&&n!==undefined&&""!==n||a(),sessionStorage.setItem(wc_cart_fragments_params.fragment_name,JSON.stringify(t)),s(r)}),r(document.body).on("wc_fragments_refreshed",function(){clearTimeout(i),i=setTimeout(n,864e5)}),r(window).on("storage onstorage",function(e){o===e.originalEvent.key&&localStorage.getItem(o)!==sessionStorage.getItem(o)&&n()}),r(window).on("pageshow",function(e){e.originalEvent.persisted&&(r(".widget_shopping_cart_content").empty(),r(document.body).trigger("wc_fragment_refresh"))});try{var c=r.parseJSON(sessionStorage.getItem(wc_cart_fragments_params.fragment_name)),_=sessionStorage.getItem(o),g=Cookies.get("woocommerce_cart_hash"),m=sessionStorage.getItem("wc_cart_created");if(null!==_&&_!==undefined&&""!==_||(_=""),null!==g&&g!==undefined&&""!==g||(g=""),_&&(null===m||m===undefined||""===m))throw"No cart_created";if(m){var d=1*m+864e5,w=(new Date).getTime();if(d", "
", "
", "" ].join(''), markup=(function (){ var gradientFix=""; if(IE){ for (var i=1; i <=6; i++){ gradientFix +="
"; }} return [ "
", "
", "
", "
", "", "
", "
", "
", "
", "
", "
", "
", "
", "
", "
", "
", "
", "
", "
", "
", "
", "
", gradientFix, "
", "
", "
", "
", "
", "", "
", "
", "
", "", "", "
", "
", "
" ].join(""); })(); function paletteTemplate (p, color, className, opts){ var html=[]; for (var i=0; i < p.length; i++){ var current=p[i]; if(current){ var tiny=tinycolor(current); var c=tiny.toHsl().l < 0.5 ? "sp-thumb-el sp-thumb-dark":"sp-thumb-el sp-thumb-light"; c +=(tinycolor.equals(color, current)) ? " sp-thumb-active":""; var formattedString=tiny.toString(opts.preferredFormat||"rgb"); var swatchStyle=rgbaSupport ? ("background-color:" + tiny.toRgbString()):"filter:" + tiny.toFilter(); html.push(''); }else{ var cls='sp-clear-display'; html.push($('
') .append($('') .attr('title', opts.noColorSelectedText) ) .html() ); }} return "
" + html.join('') + "
"; } function hideAll(){ for (var i=0; i < spectrums.length; i++){ if(spectrums[i]){ spectrums[i].hide(); }} } function instanceOptions(o, callbackContext){ var opts=$.extend({}, defaultOpts, o); opts.callbacks={ 'move': bind(opts.move, callbackContext), 'change': bind(opts.change, callbackContext), 'show': bind(opts.show, callbackContext), 'hide': bind(opts.hide, callbackContext), 'beforeShow': bind(opts.beforeShow, callbackContext) }; return opts; } function spectrum(element, o){ var opts=instanceOptions(o, element), flat=opts.flat, showSelectionPalette=opts.showSelectionPalette, localStorageKey=opts.localStorageKey, theme=opts.theme, callbacks=opts.callbacks, resize=throttle(reflow, 10), visible=false, isDragging=false, dragWidth=0, dragHeight=0, dragHelperHeight=0, slideHeight=0, slideWidth=0, alphaWidth=0, alphaSlideHelperWidth=0, slideHelperHeight=0, currentHue=0, currentSaturation=0, currentValue=0, currentAlpha=1, palette=[], paletteArray=[], paletteLookup={}, selectionPalette=opts.selectionPalette.slice(0), maxSelectionSize=opts.maxSelectionSize, draggingClass="sp-dragging", shiftMovementDirection=null; var doc=element.ownerDocument, body=doc.body, boundElement=$(element), disabled=false, container=$(markup, doc).addClass(theme), pickerContainer=container.find(".sp-picker-container"), dragger=container.find(".sp-color"), dragHelper=container.find(".sp-dragger"), slider=container.find(".sp-hue"), slideHelper=container.find(".sp-slider"), alphaSliderInner=container.find(".sp-alpha-inner"), alphaSlider=container.find(".sp-alpha"), alphaSlideHelper=container.find(".sp-alpha-handle"), textInput=container.find(".sp-input"), paletteContainer=container.find(".sp-palette"), initialColorContainer=container.find(".sp-initial"), cancelButton=container.find(".sp-cancel"), clearButton=container.find(".sp-clear"), chooseButton=container.find(".sp-choose"), toggleButton=container.find(".sp-palette-toggle"), isInput=boundElement.is("input"), isInputTypeColor=isInput&&boundElement.attr("type")==="color"&&inputTypeColorSupport(), shouldReplace=isInput&&!flat, replacer=(shouldReplace) ? $(replaceInput).addClass(theme).addClass(opts.className).addClass(opts.replacerClassName):$([]), offsetElement=(shouldReplace) ? replacer:boundElement, previewElement=replacer.find(".sp-preview-inner"), initialColor=opts.color||(isInput&&boundElement.val()), colorOnShow=false, currentPreferredFormat=opts.preferredFormat, clickoutFiresChange = !opts.showButtons||opts.clickoutFiresChange, isEmpty = !initialColor, allowEmpty=opts.allowEmpty&&!isInputTypeColor; function applyOptions(){ if(opts.showPaletteOnly){ opts.showPalette=true; } toggleButton.text(opts.showPaletteOnly ? opts.togglePaletteMoreText:opts.togglePaletteLessText); if(opts.palette){ palette=opts.palette.slice(0); paletteArray=$.isArray(palette[0]) ? palette:[palette]; paletteLookup={}; for (var i=0; i < paletteArray.length; i++){ for (var j=0; j < paletteArray[i].length; j++){ var rgb=tinycolor(paletteArray[i][j]).toRgbString(); paletteLookup[rgb]=true; }} } container.toggleClass("sp-flat", flat); container.toggleClass("sp-input-disabled", !opts.showInput); container.toggleClass("sp-alpha-enabled", opts.showAlpha); container.toggleClass("sp-clear-enabled", allowEmpty); container.toggleClass("sp-buttons-disabled", !opts.showButtons); container.toggleClass("sp-palette-buttons-disabled", !opts.togglePaletteOnly); container.toggleClass("sp-palette-disabled", !opts.showPalette); container.toggleClass("sp-palette-only", opts.showPaletteOnly); container.toggleClass("sp-initial-disabled", !opts.showInitial); container.addClass(opts.className).addClass(opts.containerClassName); reflow(); } function initialize(){ if(IE){ container.find("*:not(input)").attr("unselectable", "on"); } applyOptions(); if(shouldReplace){ boundElement.after(replacer).hide(); } if(!allowEmpty){ clearButton.hide(); } if(flat){ boundElement.after(container).hide(); }else{ var appendTo=opts.appendTo==="parent" ? boundElement.parent():$(opts.appendTo); if(appendTo.length!==1){ appendTo=$("body"); } appendTo.append(container); } updateSelectionPaletteFromStorage(); offsetElement.bind("click.spectrum touchstart.spectrum", function (e){ if(!disabled){ toggle(); } e.stopPropagation(); if(!$(e.target).is("input")){ e.preventDefault(); }}); if(boundElement.is(":disabled")||(opts.disabled===true)){ disable(); } container.click(stopPropagation); textInput.change(setFromTextInput); textInput.bind("paste", function (){ setTimeout(setFromTextInput, 1); }); textInput.keydown(function (e){ if(e.keyCode==13){ setFromTextInput(); }}); cancelButton.text(opts.cancelText); cancelButton.bind("click.spectrum", function (e){ e.stopPropagation(); e.preventDefault(); revert(); hide(); }); clearButton.attr("title", opts.clearText); clearButton.bind("click.spectrum", function (e){ e.stopPropagation(); e.preventDefault(); isEmpty=true; move(); if(flat){ updateOriginalInput(true); }}); chooseButton.text(opts.chooseText); chooseButton.bind("click.spectrum", function (e){ e.stopPropagation(); e.preventDefault(); if(IE&&textInput.is(":focus")){ textInput.trigger('change'); } if(isValid()){ updateOriginalInput(true); hide(); }}); toggleButton.text(opts.showPaletteOnly ? opts.togglePaletteMoreText:opts.togglePaletteLessText); toggleButton.bind("click.spectrum", function (e){ e.stopPropagation(); e.preventDefault(); opts.showPaletteOnly = !opts.showPaletteOnly; if(!opts.showPaletteOnly&&!flat){ container.css('left', '-=' + (pickerContainer.outerWidth(true) + 5)); } applyOptions(); }); draggable(alphaSlider, function (dragX, dragY, e){ currentAlpha=(dragX / alphaWidth); isEmpty=false; if(e.shiftKey){ currentAlpha=Math.round(currentAlpha * 10) / 10; } move(); }, dragStart, dragStop); draggable(slider, function (dragX, dragY){ currentHue=parseFloat(dragY / slideHeight); isEmpty=false; if(!opts.showAlpha){ currentAlpha=1; } move(); }, dragStart, dragStop); draggable(dragger, function (dragX, dragY, e){ if(!e.shiftKey){ shiftMovementDirection=null; } else if(!shiftMovementDirection){ var oldDragX=currentSaturation * dragWidth; var oldDragY=dragHeight - (currentValue * dragHeight); var furtherFromX=Math.abs(dragX - oldDragX) > Math.abs(dragY - oldDragY); shiftMovementDirection=furtherFromX ? "x":"y"; } var setSaturation = !shiftMovementDirection||shiftMovementDirection==="x"; var setValue = !shiftMovementDirection||shiftMovementDirection==="y"; if(setSaturation){ currentSaturation=parseFloat(dragX / dragWidth); } if(setValue){ currentValue=parseFloat((dragHeight - dragY) / dragHeight); } isEmpty=false; if(!opts.showAlpha){ currentAlpha=1; } move(); }, dragStart, dragStop); if(!!initialColor){ set(initialColor); updateUI(); currentPreferredFormat=opts.preferredFormat||tinycolor(initialColor).format; addColorToSelectionPalette(initialColor); }else{ updateUI(); } if(flat){ show(); } function paletteElementClick(e){ if(e.data&&e.data.ignore){ set($(e.target).closest(".sp-thumb-el").data("color")); move(); }else{ set($(e.target).closest(".sp-thumb-el").data("color")); move(); updateOriginalInput(true); if(opts.hideAfterPaletteSelect){ hide(); }} return false; } var paletteEvent=IE ? "mousedown.spectrum":"click.spectrum touchstart.spectrum"; paletteContainer.delegate(".sp-thumb-el", paletteEvent, paletteElementClick); initialColorContainer.delegate(".sp-thumb-el:nth-child(1)", paletteEvent, { ignore: true }, paletteElementClick); } function updateSelectionPaletteFromStorage(){ if(localStorageKey&&window.localStorage){ try { var oldPalette=window.localStorage[localStorageKey].split(",#"); if(oldPalette.length > 1){ delete window.localStorage[localStorageKey]; $.each(oldPalette, function(i, c){ addColorToSelectionPalette(c); }); }} catch(e){ } try { selectionPalette=window.localStorage[localStorageKey].split(";"); } catch (e){ }} } function addColorToSelectionPalette(color){ if(showSelectionPalette){ var rgb=tinycolor(color).toRgbString(); if(!paletteLookup[rgb]&&$.inArray(rgb, selectionPalette)===-1){ selectionPalette.push(rgb); while(selectionPalette.length > maxSelectionSize){ selectionPalette.shift(); }} if(localStorageKey&&window.localStorage){ try { window.localStorage[localStorageKey]=selectionPalette.join(";"); } catch(e){ }} }} function getUniqueSelectionPalette(){ var unique=[]; if(opts.showPalette){ for (var i=0; i < selectionPalette.length; i++){ var rgb=tinycolor(selectionPalette[i]).toRgbString(); if(!paletteLookup[rgb]){ unique.push(selectionPalette[i]); }} } return unique.reverse().slice(0, opts.maxSelectionSize); } function drawPalette(){ var currentColor=get(); var html=$.map(paletteArray, function (palette, i){ return paletteTemplate(palette, currentColor, "sp-palette-row sp-palette-row-" + i, opts); }); updateSelectionPaletteFromStorage(); if(selectionPalette){ html.push(paletteTemplate(getUniqueSelectionPalette(), currentColor, "sp-palette-row sp-palette-row-selection", opts)); } paletteContainer.html(html.join("")); } function drawInitial(){ if(opts.showInitial){ var initial=colorOnShow; var current=get(); initialColorContainer.html(paletteTemplate([initial, current], current, "sp-palette-row-initial", opts)); }} function dragStart(){ if(dragHeight <=0||dragWidth <=0||slideHeight <=0){ reflow(); } isDragging=true; container.addClass(draggingClass); shiftMovementDirection=null; boundElement.trigger('dragstart.spectrum', [ get() ]); } function dragStop(){ isDragging=false; container.removeClass(draggingClass); boundElement.trigger('dragstop.spectrum', [ get() ]); } function setFromTextInput(){ var value=textInput.val(); if((value===null||value==="")&&allowEmpty){ set(null); updateOriginalInput(true); }else{ var tiny=tinycolor(value); if(tiny.isValid()){ set(tiny); updateOriginalInput(true); }else{ textInput.addClass("sp-validation-error"); }} } function toggle(){ if(visible){ hide(); }else{ show(); }} function show(){ var event=$.Event('beforeShow.spectrum'); if(visible){ reflow(); return; } boundElement.trigger(event, [ get() ]); if(callbacks.beforeShow(get())===false||event.isDefaultPrevented()){ return; } hideAll(); visible=true; $(doc).bind("keydown.spectrum", onkeydown); $(doc).bind("click.spectrum", clickout); $(window).bind("resize.spectrum", resize); replacer.addClass("sp-active"); container.removeClass("sp-hidden"); reflow(); updateUI(); colorOnShow=get(); drawInitial(); callbacks.show(colorOnShow); boundElement.trigger('show.spectrum', [ colorOnShow ]); } function onkeydown(e){ if(e.keyCode===27){ hide(); }} function clickout(e){ if(e.button==2){ return; } if(isDragging){ return; } if(clickoutFiresChange){ updateOriginalInput(true); }else{ revert(); } hide(); } function hide(){ if(!visible||flat){ return; } visible=false; $(doc).unbind("keydown.spectrum", onkeydown); $(doc).unbind("click.spectrum", clickout); $(window).unbind("resize.spectrum", resize); replacer.removeClass("sp-active"); container.addClass("sp-hidden"); callbacks.hide(get()); boundElement.trigger('hide.spectrum', [ get() ]); } function revert(){ set(colorOnShow, true); } function set(color, ignoreFormatChange){ if(tinycolor.equals(color, get())){ updateUI(); return; } var newColor, newHsv; if(!color&&allowEmpty){ isEmpty=true; }else{ isEmpty=false; newColor=tinycolor(color); newHsv=newColor.toHsv(); currentHue=(newHsv.h % 360) / 360; currentSaturation=newHsv.s; currentValue=newHsv.v; currentAlpha=newHsv.a; } updateUI(); if(newColor&&newColor.isValid()&&!ignoreFormatChange){ currentPreferredFormat=opts.preferredFormat||newColor.getFormat(); }} function get(opts){ opts=opts||{ }; if(allowEmpty&&isEmpty){ return null; } return tinycolor.fromRatio({ h: currentHue, s: currentSaturation, v: currentValue, a: Math.round(currentAlpha * 100) / 100 }, { format: opts.format||currentPreferredFormat }); } function isValid(){ return !textInput.hasClass("sp-validation-error"); } function move(){ updateUI(); callbacks.move(get()); boundElement.trigger('move.spectrum', [ get() ]); } function updateUI(){ textInput.removeClass("sp-validation-error"); updateHelperLocations(); var flatColor=tinycolor.fromRatio({ h: currentHue, s: 1, v: 1 }); dragger.css("background-color", flatColor.toHexString()); var format=currentPreferredFormat; if(currentAlpha < 1&&!(currentAlpha===0&&format==="name")){ if(format==="hex"||format==="hex3"||format==="hex6"||format==="name"){ format="rgb"; }} var realColor=get({ format: format }), displayColor=''; previewElement.removeClass("sp-clear-display"); previewElement.css('background-color', 'transparent'); if(!realColor&&allowEmpty){ previewElement.addClass("sp-clear-display"); }else{ var realHex=realColor.toHexString(), realRgb=realColor.toRgbString(); if(rgbaSupport||realColor.alpha===1){ previewElement.css("background-color", realRgb); }else{ previewElement.css("background-color", "transparent"); previewElement.css("filter", realColor.toFilter()); } if(opts.showAlpha){ var rgb=realColor.toRgb(); rgb.a=0; var realAlpha=tinycolor(rgb).toRgbString(); var gradient="linear-gradient(left, " + realAlpha + ", " + realHex + ")"; if(IE){ alphaSliderInner.css("filter", tinycolor(realAlpha).toFilter({ gradientType: 1 }, realHex)); }else{ alphaSliderInner.css("background", "-webkit-" + gradient); alphaSliderInner.css("background", "-moz-" + gradient); alphaSliderInner.css("background", "-ms-" + gradient); alphaSliderInner.css("background", "linear-gradient(to right, " + realAlpha + ", " + realHex + ")"); }} displayColor=realColor.toString(format); } if(opts.showInput){ textInput.val(displayColor); } if(opts.showPalette){ drawPalette(); } drawInitial(); } function updateHelperLocations(){ var s=currentSaturation; var v=currentValue; if(allowEmpty&&isEmpty){ alphaSlideHelper.hide(); slideHelper.hide(); dragHelper.hide(); }else{ alphaSlideHelper.show(); slideHelper.show(); dragHelper.show(); var dragX=s * dragWidth; var dragY=dragHeight - (v * dragHeight); dragX=Math.max(-dragHelperHeight, Math.min(dragWidth - dragHelperHeight, dragX - dragHelperHeight) ); dragY=Math.max(-dragHelperHeight, Math.min(dragHeight - dragHelperHeight, dragY - dragHelperHeight) ); dragHelper.css({ "top": dragY + "px", "left": dragX + "px" }); var alphaX=currentAlpha * alphaWidth; alphaSlideHelper.css({ "left": (alphaX - (alphaSlideHelperWidth / 2)) + "px" }); var slideY=(currentHue) * slideHeight; slideHelper.css({ "top": (slideY - slideHelperHeight) + "px" }); }} function updateOriginalInput(fireCallback){ var color=get(), displayColor='', hasChanged = !tinycolor.equals(color, colorOnShow); if(color){ displayColor=color.toString(currentPreferredFormat); addColorToSelectionPalette(color); } if(isInput){ boundElement.val(displayColor); } if(fireCallback&&hasChanged){ callbacks.change(color); boundElement.trigger('change', [ color ]); }} function reflow(){ if(!visible){ return; } dragWidth=dragger.width(); dragHeight=dragger.height(); dragHelperHeight=dragHelper.height(); slideWidth=slider.width(); slideHeight=slider.height(); slideHelperHeight=slideHelper.height(); alphaWidth=alphaSlider.width(); alphaSlideHelperWidth=alphaSlideHelper.width(); if(!flat){ container.css("position", "absolute"); if(opts.offset){ container.offset(opts.offset); }else{ container.offset(getOffset(container, offsetElement)); }} updateHelperLocations(); if(opts.showPalette){ drawPalette(); } boundElement.trigger('reflow.spectrum'); } function destroy(){ boundElement.show(); offsetElement.unbind("click.spectrum touchstart.spectrum"); container.remove(); replacer.remove(); spectrums[spect.id]=null; } function option(optionName, optionValue){ if(optionName===undefined){ return $.extend({}, opts); } if(optionValue===undefined){ return opts[optionName]; } opts[optionName]=optionValue; if(optionName==="preferredFormat"){ currentPreferredFormat=opts.preferredFormat; } applyOptions(); } function enable(){ disabled=false; boundElement.attr("disabled", false); offsetElement.removeClass("sp-disabled"); } function disable(){ hide(); disabled=true; boundElement.attr("disabled", true); offsetElement.addClass("sp-disabled"); } function setOffset(coord){ opts.offset=coord; reflow(); } initialize(); var spect={ show: show, hide: hide, toggle: toggle, reflow: reflow, option: option, enable: enable, disable: disable, offset: setOffset, set: function (c){ set(c); updateOriginalInput(); }, get: get, destroy: destroy, container: container }; spect.id=spectrums.push(spect) - 1; return spect; } function getOffset(picker, input){ var extraY=0; var dpWidth=picker.outerWidth(); var dpHeight=picker.outerHeight(); var inputHeight=input.outerHeight(); var doc=picker[0].ownerDocument; var docElem=doc.documentElement; var viewWidth=docElem.clientWidth + $(doc).scrollLeft(); var viewHeight=docElem.clientHeight + $(doc).scrollTop(); var offset=input.offset(); offset.top +=inputHeight; offset.left -= Math.min(offset.left, (offset.left + dpWidth > viewWidth&&viewWidth > dpWidth) ? Math.abs(offset.left + dpWidth - viewWidth):0); offset.top -= Math.min(offset.top, ((offset.top + dpHeight > viewHeight&&viewHeight > dpHeight) ? Math.abs(dpHeight + inputHeight - extraY):extraY)); return offset; } function noop(){ } function stopPropagation(e){ e.stopPropagation(); } function bind(func, obj){ var slice=Array.prototype.slice; var args=slice.call(arguments, 2); return function (){ return func.apply(obj, args.concat(slice.call(arguments))); };} function draggable(element, onmove, onstart, onstop){ onmove=onmove||function (){ }; onstart=onstart||function (){ }; onstop=onstop||function (){ }; var doc=document; var dragging=false; var offset={}; var maxHeight=0; var maxWidth=0; var hasTouch=('ontouchstart' in window); var duringDragEvents={}; duringDragEvents["selectstart"]=prevent; duringDragEvents["dragstart"]=prevent; duringDragEvents["touchmove mousemove"]=move; duringDragEvents["touchend mouseup"]=stop; function prevent(e){ if(e.stopPropagation){ e.stopPropagation(); } if(e.preventDefault){ e.preventDefault(); } e.returnValue=false; } function move(e){ if(dragging){ if(IE&&doc.documentMode < 9&&!e.button){ return stop(); } var t0=e.originalEvent&&e.originalEvent.touches&&e.originalEvent.touches[0]; var pageX=t0&&t0.pageX||e.pageX; var pageY=t0&&t0.pageY||e.pageY; var dragX=Math.max(0, Math.min(pageX - offset.left, maxWidth)); var dragY=Math.max(0, Math.min(pageY - offset.top, maxHeight)); if(hasTouch){ prevent(e); } onmove.apply(element, [dragX, dragY, e]); }} function start(e){ var rightclick=(e.which) ? (e.which==3):(e.button==2); if(!rightclick&&!dragging){ if(onstart.apply(element, arguments)!==false){ dragging=true; maxHeight=$(element).height(); maxWidth=$(element).width(); offset=$(element).offset(); $(doc).bind(duringDragEvents); $(doc.body).addClass("sp-dragging"); move(e); prevent(e); }} } function stop(){ if(dragging){ $(doc).unbind(duringDragEvents); $(doc.body).removeClass("sp-dragging"); setTimeout(function(){ onstop.apply(element, arguments); }, 0); } dragging=false; } $(element).bind("touchstart mousedown", start); } function throttle(func, wait, debounce){ var timeout; return function (){ var context=this, args=arguments; var throttler=function (){ timeout=null; func.apply(context, args); }; if(debounce) clearTimeout(timeout); if(debounce||!timeout) timeout=setTimeout(throttler, wait); };} function inputTypeColorSupport(){ return $.fn.spectrum.inputTypeColorSupport(); } var dataID="spectrum.id"; $.fn.spectrum=function (opts, extra){ if(typeof opts=="string"){ var returnValue=this; var args=Array.prototype.slice.call(arguments, 1); this.each(function (){ var spect=spectrums[$(this).data(dataID)]; if(spect){ var method=spect[opts]; if(!method){ throw new Error("Spectrum: no such method: '" + opts + "'"); } if(opts=="get"){ returnValue=spect.get(); } else if(opts=="container"){ returnValue=spect.container; } else if(opts=="option"){ returnValue=spect.option.apply(spect, args); } else if(opts=="destroy"){ spect.destroy(); $(this).removeData(dataID); }else{ method.apply(spect, args); }} }); return returnValue; } return this.spectrum("destroy").each(function (){ var options=$.extend({}, opts, $(this).data()); var spect=spectrum(this, options); $(this).data(dataID, spect.id); }); }; $.fn.spectrum.load=true; $.fn.spectrum.loadOpts={}; $.fn.spectrum.draggable=draggable; $.fn.spectrum.defaults=defaultOpts; $.fn.spectrum.inputTypeColorSupport=function inputTypeColorSupport(){ if(typeof inputTypeColorSupport._cachedResult==="undefined"){ var colorInput=$("")[0]; inputTypeColorSupport._cachedResult=colorInput.type==="color"&&colorInput.value!==""; } return inputTypeColorSupport._cachedResult; }; $.spectrum={ }; $.spectrum.localization={ }; $.spectrum.palettes={ }; $.fn.spectrum.processNativeColorInputs=function (){ var colorInputs=$("input[type=color]"); if(colorInputs.length&&!inputTypeColorSupport()){ colorInputs.spectrum({ preferredFormat: "hex6" }); }}; (function(){ var trimLeft=/^[\s,#]+/, trimRight=/\s+$/, tinyCounter=0, math=Math, mathRound=math.round, mathMin=math.min, mathMax=math.max, mathRandom=math.random; var tinycolor=function(color, opts){ color=(color) ? color:''; opts=opts||{ }; if(color instanceof tinycolor){ return color; } if(!(this instanceof tinycolor)){ return new tinycolor(color, opts); } var rgb=inputToRGB(color); this._originalInput=color, this._r=rgb.r, this._g=rgb.g, this._b=rgb.b, this._a=rgb.a, this._roundA=mathRound(100*this._a) / 100, this._format=opts.format||rgb.format; this._gradientType=opts.gradientType; if(this._r < 1){ this._r=mathRound(this._r); } if(this._g < 1){ this._g=mathRound(this._g); } if(this._b < 1){ this._b=mathRound(this._b); } this._ok=rgb.ok; this._tc_id=tinyCounter++; }; tinycolor.prototype={ isDark: function(){ return this.getBrightness() < 128; }, isLight: function(){ return !this.isDark(); }, isValid: function(){ return this._ok; }, getOriginalInput: function(){ return this._originalInput; }, getFormat: function(){ return this._format; }, getAlpha: function(){ return this._a; }, getBrightness: function(){ var rgb=this.toRgb(); return (rgb.r * 299 + rgb.g * 587 + rgb.b * 114) / 1000; }, setAlpha: function(value){ this._a=boundAlpha(value); this._roundA=mathRound(100*this._a) / 100; return this; }, toHsv: function(){ var hsv=rgbToHsv(this._r, this._g, this._b); return { h: hsv.h * 360, s: hsv.s, v: hsv.v, a: this._a };}, toHsvString: function(){ var hsv=rgbToHsv(this._r, this._g, this._b); var h=mathRound(hsv.h * 360), s=mathRound(hsv.s * 100), v=mathRound(hsv.v * 100); return (this._a==1) ? "hsv(" + h + ", " + s + "%, " + v + "%)" : "hsva(" + h + ", " + s + "%, " + v + "%, "+ this._roundA + ")"; }, toHsl: function(){ var hsl=rgbToHsl(this._r, this._g, this._b); return { h: hsl.h * 360, s: hsl.s, l: hsl.l, a: this._a };}, toHslString: function(){ var hsl=rgbToHsl(this._r, this._g, this._b); var h=mathRound(hsl.h * 360), s=mathRound(hsl.s * 100), l=mathRound(hsl.l * 100); return (this._a==1) ? "hsl(" + h + ", " + s + "%, " + l + "%)" : "hsla(" + h + ", " + s + "%, " + l + "%, "+ this._roundA + ")"; }, toHex: function(allow3Char){ return rgbToHex(this._r, this._g, this._b, allow3Char); }, toHexString: function(allow3Char){ return '#' + this.toHex(allow3Char); }, toHex8: function(){ return rgbaToHex(this._r, this._g, this._b, this._a); }, toHex8String: function(){ return '#' + this.toHex8(); }, toRgb: function(){ return { r: mathRound(this._r), g: mathRound(this._g), b: mathRound(this._b), a: this._a };}, toRgbString: function(){ return (this._a==1) ? "rgb(" + mathRound(this._r) + ", " + mathRound(this._g) + ", " + mathRound(this._b) + ")" : "rgba(" + mathRound(this._r) + ", " + mathRound(this._g) + ", " + mathRound(this._b) + ", " + this._roundA + ")"; }, toPercentageRgb: function(){ return { r: mathRound(bound01(this._r, 255) * 100) + "%", g: mathRound(bound01(this._g, 255) * 100) + "%", b: mathRound(bound01(this._b, 255) * 100) + "%", a: this._a };}, toPercentageRgbString: function(){ return (this._a==1) ? "rgb(" + mathRound(bound01(this._r, 255) * 100) + "%, " + mathRound(bound01(this._g, 255) * 100) + "%, " + mathRound(bound01(this._b, 255) * 100) + "%)" : "rgba(" + mathRound(bound01(this._r, 255) * 100) + "%, " + mathRound(bound01(this._g, 255) * 100) + "%, " + mathRound(bound01(this._b, 255) * 100) + "%, " + this._roundA + ")"; }, toName: function(){ if(this._a===0){ return "transparent"; } if(this._a < 1){ return false; } return hexNames[rgbToHex(this._r, this._g, this._b, true)]||false; }, toFilter: function(secondColor){ var hex8String='#' + rgbaToHex(this._r, this._g, this._b, this._a); var secondHex8String=hex8String; var gradientType=this._gradientType ? "GradientType=1, ":""; if(secondColor){ var s=tinycolor(secondColor); secondHex8String=s.toHex8String(); } return "progid:DXImageTransform.Microsoft.gradient("+gradientType+"startColorstr="+hex8String+",endColorstr="+secondHex8String+")"; }, toString: function(format){ var formatSet = !!format; format=format||this._format; var formattedString=false; var hasAlpha=this._a < 1&&this._a >=0; var needsAlphaFormat = !formatSet&&hasAlpha&&(format==="hex"||format==="hex6"||format==="hex3"||format==="name"); if(needsAlphaFormat){ if(format==="name"&&this._a===0){ return this.toName(); } return this.toRgbString(); } if(format==="rgb"){ formattedString=this.toRgbString(); } if(format==="prgb"){ formattedString=this.toPercentageRgbString(); } if(format==="hex"||format==="hex6"){ formattedString=this.toHexString(); } if(format==="hex3"){ formattedString=this.toHexString(true); } if(format==="hex8"){ formattedString=this.toHex8String(); } if(format==="name"){ formattedString=this.toName(); } if(format==="hsl"){ formattedString=this.toHslString(); } if(format==="hsv"){ formattedString=this.toHsvString(); } return formattedString||this.toHexString(); }, _applyModification: function(fn, args){ var color=fn.apply(null, [this].concat([].slice.call(args))); this._r=color._r; this._g=color._g; this._b=color._b; this.setAlpha(color._a); return this; }, lighten: function(){ return this._applyModification(lighten, arguments); }, brighten: function(){ return this._applyModification(brighten, arguments); }, darken: function(){ return this._applyModification(darken, arguments); }, desaturate: function(){ return this._applyModification(desaturate, arguments); }, saturate: function(){ return this._applyModification(saturate, arguments); }, greyscale: function(){ return this._applyModification(greyscale, arguments); }, spin: function(){ return this._applyModification(spin, arguments); }, _applyCombination: function(fn, args){ return fn.apply(null, [this].concat([].slice.call(args))); }, analogous: function(){ return this._applyCombination(analogous, arguments); }, complement: function(){ return this._applyCombination(complement, arguments); }, monochromatic: function(){ return this._applyCombination(monochromatic, arguments); }, splitcomplement: function(){ return this._applyCombination(splitcomplement, arguments); }, triad: function(){ return this._applyCombination(triad, arguments); }, tetrad: function(){ return this._applyCombination(tetrad, arguments); }}; tinycolor.fromRatio=function(color, opts){ if(typeof color=="object"){ var newColor={}; for (var i in color){ if(color.hasOwnProperty(i)){ if(i==="a"){ newColor[i]=color[i]; }else{ newColor[i]=convertToPercentage(color[i]); }} } color=newColor; } return tinycolor(color, opts); }; function inputToRGB(color){ var rgb={ r: 0, g: 0, b: 0 }; var a=1; var ok=false; var format=false; if(typeof color=="string"){ color=stringInputToObject(color); } if(typeof color=="object"){ if(color.hasOwnProperty("r")&&color.hasOwnProperty("g")&&color.hasOwnProperty("b")){ rgb=rgbToRgb(color.r, color.g, color.b); ok=true; format=String(color.r).substr(-1)==="%" ? "prgb":"rgb"; } else if(color.hasOwnProperty("h")&&color.hasOwnProperty("s")&&color.hasOwnProperty("v")){ color.s=convertToPercentage(color.s); color.v=convertToPercentage(color.v); rgb=hsvToRgb(color.h, color.s, color.v); ok=true; format="hsv"; } else if(color.hasOwnProperty("h")&&color.hasOwnProperty("s")&&color.hasOwnProperty("l")){ color.s=convertToPercentage(color.s); color.l=convertToPercentage(color.l); rgb=hslToRgb(color.h, color.s, color.l); ok=true; format="hsl"; } if(color.hasOwnProperty("a")){ a=color.a; }} a=boundAlpha(a); return { ok: ok, format: color.format||format, r: mathMin(255, mathMax(rgb.r, 0)), g: mathMin(255, mathMax(rgb.g, 0)), b: mathMin(255, mathMax(rgb.b, 0)), a: a };} function rgbToRgb(r, g, b){ return { r: bound01(r, 255) * 255, g: bound01(g, 255) * 255, b: bound01(b, 255) * 255 };} function rgbToHsl(r, g, b){ r=bound01(r, 255); g=bound01(g, 255); b=bound01(b, 255); var max=mathMax(r, g, b), min=mathMin(r, g, b); var h, s, l=(max + min) / 2; if(max==min){ h=s = 0; }else{ var d=max - min; s=l > 0.5 ? d / (2 - max - min):d / (max + min); switch(max){ case r: h=(g - b) / d + (g < b ? 6:0); break; case g: h=(b - r) / d + 2; break; case b: h=(r - g) / d + 4; break; } h /=6; } return { h: h, s: s, l: l };} function hslToRgb(h, s, l){ var r, g, b; h=bound01(h, 360); s=bound01(s, 100); l=bound01(l, 100); function hue2rgb(p, q, t){ if(t < 0) t +=1; if(t > 1) t -=1; if(t < 1/6) return p + (q - p) * 6 * t; if(t < 1/2) return q; if(t < 2/3) return p + (q - p) * (2/3 - t) * 6; return p; } if(s===0){ r=g = b=l; }else{ var q=l < 0.5 ? l * (1 + s):l + s - l * s; var p=2 * l - q; r=hue2rgb(p, q, h + 1/3); g=hue2rgb(p, q, h); b=hue2rgb(p, q, h - 1/3); } return { r: r * 255, g: g * 255, b: b * 255 };} function rgbToHsv(r, g, b){ r=bound01(r, 255); g=bound01(g, 255); b=bound01(b, 255); var max=mathMax(r, g, b), min=mathMin(r, g, b); var h, s, v=max; var d=max - min; s=max===0 ? 0:d / max; if(max==min){ h=0; }else{ switch(max){ case r: h=(g - b) / d + (g < b ? 6:0); break; case g: h=(b - r) / d + 2; break; case b: h=(r - g) / d + 4; break; } h /=6; } return { h: h, s: s, v: v };} function hsvToRgb(h, s, v){ h=bound01(h, 360) * 6; s=bound01(s, 100); v=bound01(v, 100); var i=math.floor(h), f=h - i, p=v * (1 - s), q=v * (1 - f * s), t=v * (1 - (1 - f) * s), mod=i % 6, r=[v, q, p, p, t, v][mod], g=[t, v, v, q, p, p][mod], b=[p, p, t, v, v, q][mod]; return { r: r * 255, g: g * 255, b: b * 255 };} function rgbToHex(r, g, b, allow3Char){ var hex=[ pad2(mathRound(r).toString(16)), pad2(mathRound(g).toString(16)), pad2(mathRound(b).toString(16)) ]; if(allow3Char&&hex[0].charAt(0)==hex[0].charAt(1)&&hex[1].charAt(0)==hex[1].charAt(1)&&hex[2].charAt(0)==hex[2].charAt(1)){ return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0); } return hex.join(""); } function rgbaToHex(r, g, b, a){ var hex=[ pad2(convertDecimalToHex(a)), pad2(mathRound(r).toString(16)), pad2(mathRound(g).toString(16)), pad2(mathRound(b).toString(16)) ]; return hex.join(""); } tinycolor.equals=function (color1, color2){ if(!color1||!color2){ return false; } return tinycolor(color1).toRgbString()==tinycolor(color2).toRgbString(); }; tinycolor.random=function(){ return tinycolor.fromRatio({ r: mathRandom(), g: mathRandom(), b: mathRandom() }); }; function desaturate(color, amount){ amount=(amount===0) ? 0:(amount||10); var hsl=tinycolor(color).toHsl(); hsl.s -=amount / 100; hsl.s=clamp01(hsl.s); return tinycolor(hsl); } function saturate(color, amount){ amount=(amount===0) ? 0:(amount||10); var hsl=tinycolor(color).toHsl(); hsl.s +=amount / 100; hsl.s=clamp01(hsl.s); return tinycolor(hsl); } function greyscale(color){ return tinycolor(color).desaturate(100); } function lighten (color, amount){ amount=(amount===0) ? 0:(amount||10); var hsl=tinycolor(color).toHsl(); hsl.l +=amount / 100; hsl.l=clamp01(hsl.l); return tinycolor(hsl); } function brighten(color, amount){ amount=(amount===0) ? 0:(amount||10); var rgb=tinycolor(color).toRgb(); rgb.r=mathMax(0, mathMin(255, rgb.r - mathRound(255 * - (amount / 100)))); rgb.g=mathMax(0, mathMin(255, rgb.g - mathRound(255 * - (amount / 100)))); rgb.b=mathMax(0, mathMin(255, rgb.b - mathRound(255 * - (amount / 100)))); return tinycolor(rgb); } function darken (color, amount){ amount=(amount===0) ? 0:(amount||10); var hsl=tinycolor(color).toHsl(); hsl.l -=amount / 100; hsl.l=clamp01(hsl.l); return tinycolor(hsl); } function spin(color, amount){ var hsl=tinycolor(color).toHsl(); var hue=(mathRound(hsl.h) + amount) % 360; hsl.h=hue < 0 ? 360 + hue:hue; return tinycolor(hsl); } function complement(color){ var hsl=tinycolor(color).toHsl(); hsl.h=(hsl.h + 180) % 360; return tinycolor(hsl); } function triad(color){ var hsl=tinycolor(color).toHsl(); var h=hsl.h; return [ tinycolor(color), tinycolor({ h: (h + 120) % 360, s: hsl.s, l: hsl.l }), tinycolor({ h: (h + 240) % 360, s: hsl.s, l: hsl.l }) ]; } function tetrad(color){ var hsl=tinycolor(color).toHsl(); var h=hsl.h; return [ tinycolor(color), tinycolor({ h: (h + 90) % 360, s: hsl.s, l: hsl.l }), tinycolor({ h: (h + 180) % 360, s: hsl.s, l: hsl.l }), tinycolor({ h: (h + 270) % 360, s: hsl.s, l: hsl.l }) ]; } function splitcomplement(color){ var hsl=tinycolor(color).toHsl(); var h=hsl.h; return [ tinycolor(color), tinycolor({ h: (h + 72) % 360, s: hsl.s, l: hsl.l}), tinycolor({ h: (h + 216) % 360, s: hsl.s, l: hsl.l}) ]; } function analogous(color, results, slices){ results=results||6; slices=slices||30; var hsl=tinycolor(color).toHsl(); var part=360 / slices; var ret=[tinycolor(color)]; for (hsl.h=((hsl.h - (part * results >> 1)) + 720) % 360; --results;){ hsl.h=(hsl.h + part) % 360; ret.push(tinycolor(hsl)); } return ret; } function monochromatic(color, results){ results=results||6; var hsv=tinycolor(color).toHsv(); var h=hsv.h, s=hsv.s, v=hsv.v; var ret=[]; var modification=1 / results; while (results--){ ret.push(tinycolor({ h: h, s: s, v: v})); v=(v + modification) % 1; } return ret; } tinycolor.mix=function(color1, color2, amount){ amount=(amount===0) ? 0:(amount||50); var rgb1=tinycolor(color1).toRgb(); var rgb2=tinycolor(color2).toRgb(); var p=amount / 100; var w=p * 2 - 1; var a=rgb2.a - rgb1.a; var w1; if(w * a==-1){ w1=w; }else{ w1=(w + a) / (1 + w * a); } w1=(w1 + 1) / 2; var w2=1 - w1; var rgba={ r: rgb2.r * w1 + rgb1.r * w2, g: rgb2.g * w1 + rgb1.g * w2, b: rgb2.b * w1 + rgb1.b * w2, a: rgb2.a * p + rgb1.a * (1 - p) }; return tinycolor(rgba); }; tinycolor.readability=function(color1, color2){ var c1=tinycolor(color1); var c2=tinycolor(color2); var rgb1=c1.toRgb(); var rgb2=c2.toRgb(); var brightnessA=c1.getBrightness(); var brightnessB=c2.getBrightness(); var colorDiff=( Math.max(rgb1.r, rgb2.r) - Math.min(rgb1.r, rgb2.r) + Math.max(rgb1.g, rgb2.g) - Math.min(rgb1.g, rgb2.g) + Math.max(rgb1.b, rgb2.b) - Math.min(rgb1.b, rgb2.b) ); return { brightness: Math.abs(brightnessA - brightnessB), color: colorDiff };}; tinycolor.isReadable=function(color1, color2){ var readability=tinycolor.readability(color1, color2); return readability.brightness > 125&&readability.color > 500; }; tinycolor.mostReadable=function(baseColor, colorList){ var bestColor=null; var bestScore=0; var bestIsReadable=false; for (var i=0; i < colorList.length; i++){ var readability=tinycolor.readability(baseColor, colorList[i]); var readable=readability.brightness > 125&&readability.color > 500; var score=3 * (readability.brightness / 125) + (readability.color / 500); if((readable&&! bestIsReadable) || (readable&&bestIsReadable&&score > bestScore) || ((! readable)&&(! bestIsReadable)&&score > bestScore)){ bestIsReadable=readable; bestScore=score; bestColor=tinycolor(colorList[i]); }} return bestColor; }; var names=tinycolor.names={ aliceblue: "f0f8ff", antiquewhite: "faebd7", aqua: "0ff", aquamarine: "7fffd4", azure: "f0ffff", beige: "f5f5dc", bisque: "ffe4c4", black: "000", blanchedalmond: "ffebcd", blue: "00f", blueviolet: "8a2be2", brown: "a52a2a", burlywood: "deb887", burntsienna: "ea7e5d", cadetblue: "5f9ea0", chartreuse: "7fff00", chocolate: "d2691e", coral: "ff7f50", cornflowerblue: "6495ed", cornsilk: "fff8dc", crimson: "dc143c", cyan: "0ff", darkblue: "00008b", darkcyan: "008b8b", darkgoldenrod: "b8860b", darkgray: "a9a9a9", darkgreen: "006400", darkgrey: "a9a9a9", darkkhaki: "bdb76b", darkmagenta: "8b008b", darkolivegreen: "556b2f", darkorange: "ff8c00", darkorchid: "9932cc", darkred: "8b0000", darksalmon: "e9967a", darkseagreen: "8fbc8f", darkslateblue: "483d8b", darkslategray: "2f4f4f", darkslategrey: "2f4f4f", darkturquoise: "00ced1", darkviolet: "9400d3", deeppink: "ff1493", deepskyblue: "00bfff", dimgray: "696969", dimgrey: "696969", dodgerblue: "1e90ff", firebrick: "b22222", floralwhite: "fffaf0", forestgreen: "228b22", fuchsia: "f0f", gainsboro: "dcdcdc", ghostwhite: "f8f8ff", gold: "ffd700", goldenrod: "daa520", gray: "808080", green: "008000", greenyellow: "adff2f", grey: "808080", honeydew: "f0fff0", hotpink: "ff69b4", indianred: "cd5c5c", indigo: "4b0082", ivory: "fffff0", khaki: "f0e68c", lavender: "e6e6fa", lavenderblush: "fff0f5", lawngreen: "7cfc00", lemonchiffon: "fffacd", lightblue: "add8e6", lightcoral: "f08080", lightcyan: "e0ffff", lightgoldenrodyellow: "fafad2", lightgray: "d3d3d3", lightgreen: "90ee90", lightgrey: "d3d3d3", lightpink: "ffb6c1", lightsalmon: "ffa07a", lightseagreen: "20b2aa", lightskyblue: "87cefa", lightslategray: "789", lightslategrey: "789", lightsteelblue: "b0c4de", lightyellow: "ffffe0", lime: "0f0", limegreen: "32cd32", linen: "faf0e6", magenta: "f0f", maroon: "800000", mediumaquamarine: "66cdaa", mediumblue: "0000cd", mediumorchid: "ba55d3", mediumpurple: "9370db", mediumseagreen: "3cb371", mediumslateblue: "7b68ee", mediumspringgreen: "00fa9a", mediumturquoise: "48d1cc", mediumvioletred: "c71585", midnightblue: "191970", mintcream: "f5fffa", mistyrose: "ffe4e1", moccasin: "ffe4b5", navajowhite: "ffdead", navy: "000080", oldlace: "fdf5e6", olive: "808000", olivedrab: "6b8e23", orange: "ffa500", orangered: "ff4500", orchid: "da70d6", palegoldenrod: "eee8aa", palegreen: "98fb98", paleturquoise: "afeeee", palevioletred: "db7093", papayawhip: "ffefd5", peachpuff: "ffdab9", peru: "cd853f", pink: "ffc0cb", plum: "dda0dd", powderblue: "b0e0e6", purple: "800080", rebeccapurple: "663399", red: "f00", rosybrown: "bc8f8f", royalblue: "4169e1", saddlebrown: "8b4513", salmon: "fa8072", sandybrown: "f4a460", seagreen: "2e8b57", seashell: "fff5ee", sienna: "a0522d", silver: "c0c0c0", skyblue: "87ceeb", slateblue: "6a5acd", slategray: "708090", slategrey: "708090", snow: "fffafa", springgreen: "00ff7f", steelblue: "4682b4", tan: "d2b48c", teal: "008080", thistle: "d8bfd8", tomato: "ff6347", turquoise: "40e0d0", violet: "ee82ee", wheat: "f5deb3", white: "fff", whitesmoke: "f5f5f5", yellow: "ff0", yellowgreen: "9acd32" }; var hexNames=tinycolor.hexNames=flip(names); function flip(o){ var flipped={ }; for (var i in o){ if(o.hasOwnProperty(i)){ flipped[o[i]]=i; }} return flipped; } function boundAlpha(a){ a=parseFloat(a); if(isNaN(a)||a < 0||a > 1){ a=1; } return a; } function bound01(n, max){ if(isOnePointZero(n)){ n="100%"; } var processPercent=isPercentage(n); n=mathMin(max, mathMax(0, parseFloat(n))); if(processPercent){ n=parseInt(n * max, 10) / 100; } if((math.abs(n - max) < 0.000001)){ return 1; } return (n % max) / parseFloat(max); } function clamp01(val){ return mathMin(1, mathMax(0, val)); } function parseIntFromHex(val){ return parseInt(val, 16); } function isOnePointZero(n){ return typeof n=="string"&&n.indexOf('.')!=-1&&parseFloat(n)===1; } function isPercentage(n){ return typeof n==="string"&&n.indexOf('%')!=-1; } function pad2(c){ return c.length==1 ? '0' + c:'' + c; } function convertToPercentage(n){ if(n <=1){ n=(n * 100) + "%"; } return n; } function convertDecimalToHex(d){ return Math.round(parseFloat(d) * 255).toString(16); } function convertHexToDecimal(h){ return (parseIntFromHex(h) / 255); } var matchers=(function(){ var CSS_INTEGER="[-\\+]?\\d+%?"; var CSS_NUMBER="[-\\+]?\\d*\\.\\d+%?"; var CSS_UNIT="(?:" + CSS_NUMBER + ")|(?:" + CSS_INTEGER + ")"; var PERMISSIVE_MATCH3="[\\s|\\(]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")\\s*\\)?"; var PERMISSIVE_MATCH4="[\\s|\\(]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")\\s*\\)?"; return { rgb: new RegExp("rgb" + PERMISSIVE_MATCH3), rgba: new RegExp("rgba" + PERMISSIVE_MATCH4), hsl: new RegExp("hsl" + PERMISSIVE_MATCH3), hsla: new RegExp("hsla" + PERMISSIVE_MATCH4), hsv: new RegExp("hsv" + PERMISSIVE_MATCH3), hsva: new RegExp("hsva" + PERMISSIVE_MATCH4), hex3: /^([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/, hex6: /^([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/, hex8: /^([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/ };})(); function stringInputToObject(color){ color=color.replace(trimLeft,'').replace(trimRight, '').toLowerCase(); var named=false; if(names[color]){ color=names[color]; named=true; } else if(color=='transparent'){ return { r: 0, g: 0, b: 0, a: 0, format: "name" };} var match; if((match=matchers.rgb.exec(color))){ return { r: match[1], g: match[2], b: match[3] };} if((match=matchers.rgba.exec(color))){ return { r: match[1], g: match[2], b: match[3], a: match[4] };} if((match=matchers.hsl.exec(color))){ return { h: match[1], s: match[2], l: match[3] };} if((match=matchers.hsla.exec(color))){ return { h: match[1], s: match[2], l: match[3], a: match[4] };} if((match=matchers.hsv.exec(color))){ return { h: match[1], s: match[2], v: match[3] };} if((match=matchers.hsva.exec(color))){ return { h: match[1], s: match[2], v: match[3], a: match[4] };} if((match=matchers.hex8.exec(color))){ return { a: convertHexToDecimal(match[1]), r: parseIntFromHex(match[2]), g: parseIntFromHex(match[3]), b: parseIntFromHex(match[4]), format: named ? "name":"hex8" };} if((match=matchers.hex6.exec(color))){ return { r: parseIntFromHex(match[1]), g: parseIntFromHex(match[2]), b: parseIntFromHex(match[3]), format: named ? "name":"hex" };} if((match=matchers.hex3.exec(color))){ return { r: parseIntFromHex(match[1] + '' + match[1]), g: parseIntFromHex(match[2] + '' + match[2]), b: parseIntFromHex(match[3] + '' + match[3]), format: named ? "name":"hex" };} return false; } window.tinycolor=tinycolor; })(); $(function (){ if($.fn.spectrum.load){ $.fn.spectrum.processNativeColorInputs(); }}); }); if("undefined"==typeof jQuery)throw new Error("Bootstrap's JavaScript requires jQuery");+function(a){"use strict";var b=a.fn.jquery.split(" ")[0].split(".");if(b[0]<2&&b[1]<9||1==b[0]&&9==b[1]&&b[2]<1||b[0]>3)throw new Error("Bootstrap's JavaScript requires jQuery version 1.9.1 or higher, but lower than version 4")}(jQuery),+function(a){"use strict";function b(){var a=document.createElement("bootstrap"),b={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var c in b)if(void 0!==a.style[c])return{end:b[c]};return!1}a.fn.emulateTransitionEnd=function(b){var c=!1,d=this;a(this).one("bsTransitionEnd",function(){c=!0});var e=function(){c||a(d).trigger(a.support.transition.end)};return setTimeout(e,b),this},a(function(){a.support.transition=b(),a.support.transition&&(a.event.special.bsTransitionEnd={bindType:a.support.transition.end,delegateType:a.support.transition.end,handle:function(b){if(a(b.target).is(this))return b.handleObj.handler.apply(this,arguments)}})})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var c=a(this),e=c.data("bs.alert");e||c.data("bs.alert",e=new d(this)),"string"==typeof b&&e[b].call(c)})}var c='[data-dismiss="alert"]',d=function(b){a(b).on("click",c,this.close)};d.VERSION="3.3.7",d.TRANSITION_DURATION=150,d.prototype.close=function(b){function c(){g.detach().trigger("closed.bs.alert").remove()}var e=a(this),f=e.attr("data-target");f||(f=e.attr("href"),f=f&&f.replace(/.*(?=#[^\s]*$)/,""));var g=a("#"===f?[]:f);b&&b.preventDefault(),g.length||(g=e.closest(".alert")),g.trigger(b=a.Event("close.bs.alert")),b.isDefaultPrevented()||(g.removeClass("in"),a.support.transition&&g.hasClass("fade")?g.one("bsTransitionEnd",c).emulateTransitionEnd(d.TRANSITION_DURATION):c())};var e=a.fn.alert;a.fn.alert=b,a.fn.alert.Constructor=d,a.fn.alert.noConflict=function(){return a.fn.alert=e,this},a(document).on("click.bs.alert.data-api",c,d.prototype.close)}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.button"),f="object"==typeof b&&b;e||d.data("bs.button",e=new c(this,f)),"toggle"==b?e.toggle():b&&e.setState(b)})}var c=function(b,d){this.$element=a(b),this.options=a.extend({},c.DEFAULTS,d),this.isLoading=!1};c.VERSION="3.3.7",c.DEFAULTS={loadingText:"loading..."},c.prototype.setState=function(b){var c="disabled",d=this.$element,e=d.is("input")?"val":"html",f=d.data();b+="Text",null==f.resetText&&d.data("resetText",d[e]()),setTimeout(a.proxy(function(){d[e](null==f[b]?this.options[b]:f[b]),"loadingText"==b?(this.isLoading=!0,d.addClass(c).attr(c,c).prop(c,!0)):this.isLoading&&(this.isLoading=!1,d.removeClass(c).removeAttr(c).prop(c,!1))},this),0)},c.prototype.toggle=function(){var a=!0,b=this.$element.closest('[data-toggle="buttons"]');if(b.length){var c=this.$element.find("input");"radio"==c.prop("type")?(c.prop("checked")&&(a=!1),b.find(".active").removeClass("active"),this.$element.addClass("active")):"checkbox"==c.prop("type")&&(c.prop("checked")!==this.$element.hasClass("active")&&(a=!1),this.$element.toggleClass("active")),c.prop("checked",this.$element.hasClass("active")),a&&c.trigger("change")}else this.$element.attr("aria-pressed",!this.$element.hasClass("active")),this.$element.toggleClass("active")};var d=a.fn.button;a.fn.button=b,a.fn.button.Constructor=c,a.fn.button.noConflict=function(){return a.fn.button=d,this},a(document).on("click.bs.button.data-api",'[data-toggle^="button"]',function(c){var d=a(c.target).closest(".btn");b.call(d,"toggle"),a(c.target).is('input[type="radio"], input[type="checkbox"]')||(c.preventDefault(),d.is("input,button")?d.trigger("focus"):d.find("input:visible,button:visible").first().trigger("focus"))}).on("focus.bs.button.data-api blur.bs.button.data-api",'[data-toggle^="button"]',function(b){a(b.target).closest(".btn").toggleClass("focus",/^focus(in)?$/.test(b.type))})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.carousel"),f=a.extend({},c.DEFAULTS,d.data(),"object"==typeof b&&b),g="string"==typeof b?b:f.slide;e||d.data("bs.carousel",e=new c(this,f)),"number"==typeof b?e.to(b):g?e[g]():f.interval&&e.pause().cycle()})}var c=function(b,c){this.$element=a(b),this.$indicators=this.$element.find(".carousel-indicators"),this.options=c,this.paused=null,this.sliding=null,this.interval=null,this.$active=null,this.$items=null,this.options.keyboard&&this.$element.on("keydown.bs.carousel",a.proxy(this.keydown,this)),"hover"==this.options.pause&&!("ontouchstart"in document.documentElement)&&this.$element.on("mouseenter.bs.carousel",a.proxy(this.pause,this)).on("mouseleave.bs.carousel",a.proxy(this.cycle,this))};c.VERSION="3.3.7",c.TRANSITION_DURATION=600,c.DEFAULTS={interval:5e3,pause:"hover",wrap:!0,keyboard:!0},c.prototype.keydown=function(a){if(!/input|textarea/i.test(a.target.tagName)){switch(a.which){case 37:this.prev();break;case 39:this.next();break;default:return}a.preventDefault()}},c.prototype.cycle=function(b){return b||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval)),this},c.prototype.getItemIndex=function(a){return this.$items=a.parent().children(".item"),this.$items.index(a||this.$active)},c.prototype.getItemForDirection=function(a,b){var c=this.getItemIndex(b),d="prev"==a&&0===c||"next"==a&&c==this.$items.length-1;if(d&&!this.options.wrap)return b;var e="prev"==a?-1:1,f=(c+e)%this.$items.length;return this.$items.eq(f)},c.prototype.to=function(a){var b=this,c=this.getItemIndex(this.$active=this.$element.find(".item.active"));if(!(a>this.$items.length-1||a<0))return this.sliding?this.$element.one("slid.bs.carousel",function(){b.to(a)}):c==a?this.pause().cycle():this.slide(a>c?"next":"prev",this.$items.eq(a))},c.prototype.pause=function(b){return b||(this.paused=!0),this.$element.find(".next, .prev").length&&a.support.transition&&(this.$element.trigger(a.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this},c.prototype.next=function(){if(!this.sliding)return this.slide("next")},c.prototype.prev=function(){if(!this.sliding)return this.slide("prev")},c.prototype.slide=function(b,d){var e=this.$element.find(".item.active"),f=d||this.getItemForDirection(b,e),g=this.interval,h="next"==b?"left":"right",i=this;if(f.hasClass("active"))return this.sliding=!1;var j=f[0],k=a.Event("slide.bs.carousel",{relatedTarget:j,direction:h});if(this.$element.trigger(k),!k.isDefaultPrevented()){if(this.sliding=!0,g&&this.pause(),this.$indicators.length){this.$indicators.find(".active").removeClass("active");var l=a(this.$indicators.children()[this.getItemIndex(f)]);l&&l.addClass("active")}var m=a.Event("slid.bs.carousel",{relatedTarget:j,direction:h});return a.support.transition&&this.$element.hasClass("slide")?(f.addClass(b),f[0].offsetWidth,e.addClass(h),f.addClass(h),e.one("bsTransitionEnd",function(){f.removeClass([b,h].join(" ")).addClass("active"),e.removeClass(["active",h].join(" ")),i.sliding=!1,setTimeout(function(){i.$element.trigger(m)},0)}).emulateTransitionEnd(c.TRANSITION_DURATION)):(e.removeClass("active"),f.addClass("active"),this.sliding=!1,this.$element.trigger(m)),g&&this.cycle(),this}};var d=a.fn.carousel;a.fn.carousel=b,a.fn.carousel.Constructor=c,a.fn.carousel.noConflict=function(){return a.fn.carousel=d,this};var e=function(c){var d,e=a(this),f=a(e.attr("data-target")||(d=e.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,""));if(f.hasClass("carousel")){var g=a.extend({},f.data(),e.data()),h=e.attr("data-slide-to");h&&(g.interval=!1),b.call(f,g),h&&f.data("bs.carousel").to(h),c.preventDefault()}};a(document).on("click.bs.carousel.data-api","[data-slide]",e).on("click.bs.carousel.data-api","[data-slide-to]",e),a(window).on("load",function(){a('[data-ride="carousel"]').each(function(){var c=a(this);b.call(c,c.data())})})}(jQuery),+function(a){"use strict";function b(b){var c,d=b.attr("data-target")||(c=b.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,"");return a(d)}function c(b){return this.each(function(){var c=a(this),e=c.data("bs.collapse"),f=a.extend({},d.DEFAULTS,c.data(),"object"==typeof b&&b);!e&&f.toggle&&/show|hide/.test(b)&&(f.toggle=!1),e||c.data("bs.collapse",e=new d(this,f)),"string"==typeof b&&e[b]()})}var d=function(b,c){this.$element=a(b),this.options=a.extend({},d.DEFAULTS,c),this.$trigger=a('[data-toggle="collapse"][href="#'+b.id+'"],[data-toggle="collapse"][data-target="#'+b.id+'"]'),this.transitioning=null,this.options.parent?this.$parent=this.getParent():this.addAriaAndCollapsedClass(this.$element,this.$trigger),this.options.toggle&&this.toggle()};d.VERSION="3.3.7",d.TRANSITION_DURATION=350,d.DEFAULTS={toggle:!0},d.prototype.dimension=function(){var a=this.$element.hasClass("width");return a?"width":"height"},d.prototype.show=function(){if(!this.transitioning&&!this.$element.hasClass("in")){var b,e=this.$parent&&this.$parent.children(".panel").children(".in, .collapsing");if(!(e&&e.length&&(b=e.data("bs.collapse"),b&&b.transitioning))){var f=a.Event("show.bs.collapse");if(this.$element.trigger(f),!f.isDefaultPrevented()){e&&e.length&&(c.call(e,"hide"),b||e.data("bs.collapse",null));var g=this.dimension();this.$element.removeClass("collapse").addClass("collapsing")[g](0).attr("aria-expanded",!0),this.$trigger.removeClass("collapsed").attr("aria-expanded",!0),this.transitioning=1;var h=function(){this.$element.removeClass("collapsing").addClass("collapse in")[g](""),this.transitioning=0,this.$element.trigger("shown.bs.collapse")};if(!a.support.transition)return h.call(this);var i=a.camelCase(["scroll",g].join("-"));this.$element.one("bsTransitionEnd",a.proxy(h,this)).emulateTransitionEnd(d.TRANSITION_DURATION)[g](this.$element[0][i])}}}},d.prototype.hide=function(){if(!this.transitioning&&this.$element.hasClass("in")){var b=a.Event("hide.bs.collapse");if(this.$element.trigger(b),!b.isDefaultPrevented()){var c=this.dimension();this.$element[c](this.$element[c]())[0].offsetHeight,this.$element.addClass("collapsing").removeClass("collapse in").attr("aria-expanded",!1),this.$trigger.addClass("collapsed").attr("aria-expanded",!1),this.transitioning=1;var e=function(){this.transitioning=0,this.$element.removeClass("collapsing").addClass("collapse").trigger("hidden.bs.collapse")};return a.support.transition?void this.$element[c](0).one("bsTransitionEnd",a.proxy(e,this)).emulateTransitionEnd(d.TRANSITION_DURATION):e.call(this)}}},d.prototype.toggle=function(){this[this.$element.hasClass("in")?"hide":"show"]()},d.prototype.getParent=function(){return a(this.options.parent).find('[data-toggle="collapse"][data-parent="'+this.options.parent+'"]').each(a.proxy(function(c,d){var e=a(d);this.addAriaAndCollapsedClass(b(e),e)},this)).end()},d.prototype.addAriaAndCollapsedClass=function(a,b){var c=a.hasClass("in");a.attr("aria-expanded",c),b.toggleClass("collapsed",!c).attr("aria-expanded",c)};var e=a.fn.collapse;a.fn.collapse=c,a.fn.collapse.Constructor=d,a.fn.collapse.noConflict=function(){return a.fn.collapse=e,this},a(document).on("click.bs.collapse.data-api",'[data-toggle="collapse"]',function(d){var e=a(this);e.attr("data-target")||d.preventDefault();var f=b(e),g=f.data("bs.collapse"),h=g?"toggle":e.data();c.call(f,h)})}(jQuery),+function(a){"use strict";function b(b){var c=b.attr("data-target");c||(c=b.attr("href"),c=c&&/#[A-Za-z]/.test(c)&&c.replace(/.*(?=#[^\s]*$)/,""));var d=c&&a(c);return d&&d.length?d:b.parent()}function c(c){c&&3===c.which||(a(e).remove(),a(f).each(function(){var d=a(this),e=b(d),f={relatedTarget:this};e.hasClass("open")&&(c&&"click"==c.type&&/input|textarea/i.test(c.target.tagName)&&a.contains(e[0],c.target)||(e.trigger(c=a.Event("hide.bs.dropdown",f)),c.isDefaultPrevented()||(d.attr("aria-expanded","false"),e.removeClass("open").trigger(a.Event("hidden.bs.dropdown",f)))))}))}function d(b){return this.each(function(){var c=a(this),d=c.data("bs.dropdown");d||c.data("bs.dropdown",d=new g(this)),"string"==typeof b&&d[b].call(c)})}var e=".dropdown-backdrop",f='[data-toggle="dropdown"]',g=function(b){a(b).on("click.bs.dropdown",this.toggle)};g.VERSION="3.3.7",g.prototype.toggle=function(d){var e=a(this);if(!e.is(".disabled, :disabled")){var f=b(e),g=f.hasClass("open");if(c(),!g){"ontouchstart"in document.documentElement&&!f.closest(".navbar-nav").length&&a(document.createElement("div")).addClass("dropdown-backdrop").insertAfter(a(this)).on("click",c);var h={relatedTarget:this};if(f.trigger(d=a.Event("show.bs.dropdown",h)),d.isDefaultPrevented())return;e.trigger("focus").attr("aria-expanded","true"),f.toggleClass("open").trigger(a.Event("shown.bs.dropdown",h))}return!1}},g.prototype.keydown=function(c){if(/(38|40|27|32)/.test(c.which)&&!/input|textarea/i.test(c.target.tagName)){var d=a(this);if(c.preventDefault(),c.stopPropagation(),!d.is(".disabled, :disabled")){var e=b(d),g=e.hasClass("open");if(!g&&27!=c.which||g&&27==c.which)return 27==c.which&&e.find(f).trigger("focus"),d.trigger("click");var h=" li:not(.disabled):visible a",i=e.find(".dropdown-menu"+h);if(i.length){var j=i.index(c.target);38==c.which&&j>0&&j--,40==c.which&&jdocument.documentElement.clientHeight;this.$element.css({paddingLeft:!this.bodyIsOverflowing&&a?this.scrollbarWidth:"",paddingRight:this.bodyIsOverflowing&&!a?this.scrollbarWidth:""})},c.prototype.resetAdjustments=function(){this.$element.css({paddingLeft:"",paddingRight:""})},c.prototype.checkScrollbar=function(){var a=window.innerWidth;if(!a){var b=document.documentElement.getBoundingClientRect();a=b.right-Math.abs(b.left)}this.bodyIsOverflowing=document.body.clientWidth
',trigger:"hover focus",title:"",delay:0,html:!1,container:!1,viewport:{selector:"body",padding:0}},c.prototype.init=function(b,c,d){if(this.enabled=!0,this.type=b,this.$element=a(c),this.options=this.getOptions(d),this.$viewport=this.options.viewport&&a(a.isFunction(this.options.viewport)?this.options.viewport.call(this,this.$element):this.options.viewport.selector||this.options.viewport),this.inState={click:!1,hover:!1,focus:!1},this.$element[0]instanceof document.constructor&&!this.options.selector)throw new Error("`selector` option must be specified when initializing "+this.type+" on the window.document object!");for(var e=this.options.trigger.split(" "),f=e.length;f--;){var g=e[f];if("click"==g)this.$element.on("click."+this.type,this.options.selector,a.proxy(this.toggle,this));else if("manual"!=g){var h="hover"==g?"mouseenter":"focusin",i="hover"==g?"mouseleave":"focusout";this.$element.on(h+"."+this.type,this.options.selector,a.proxy(this.enter,this)),this.$element.on(i+"."+this.type,this.options.selector,a.proxy(this.leave,this))}}this.options.selector?this._options=a.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},c.prototype.getDefaults=function(){return c.DEFAULTS},c.prototype.getOptions=function(b){return b=a.extend({},this.getDefaults(),this.$element.data(),b),b.delay&&"number"==typeof b.delay&&(b.delay={show:b.delay,hide:b.delay}),b},c.prototype.getDelegateOptions=function(){var b={},c=this.getDefaults();return this._options&&a.each(this._options,function(a,d){c[a]!=d&&(b[a]=d)}),b},c.prototype.enter=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget).data("bs."+this.type);return c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c)),b instanceof a.Event&&(c.inState["focusin"==b.type?"focus":"hover"]=!0),c.tip().hasClass("in")||"in"==c.hoverState?void(c.hoverState="in"):(clearTimeout(c.timeout),c.hoverState="in",c.options.delay&&c.options.delay.show?void(c.timeout=setTimeout(function(){"in"==c.hoverState&&c.show()},c.options.delay.show)):c.show())},c.prototype.isInStateTrue=function(){for(var a in this.inState)if(this.inState[a])return!0;return!1},c.prototype.leave=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget).data("bs."+this.type);if(c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c)),b instanceof a.Event&&(c.inState["focusout"==b.type?"focus":"hover"]=!1),!c.isInStateTrue())return clearTimeout(c.timeout),c.hoverState="out",c.options.delay&&c.options.delay.hide?void(c.timeout=setTimeout(function(){"out"==c.hoverState&&c.hide()},c.options.delay.hide)):c.hide()},c.prototype.show=function(){var b=a.Event("show.bs."+this.type);if(this.hasContent()&&this.enabled){this.$element.trigger(b);var d=a.contains(this.$element[0].ownerDocument.documentElement,this.$element[0]);if(b.isDefaultPrevented()||!d)return;var e=this,f=this.tip(),g=this.getUID(this.type);this.setContent(),f.attr("id",g),this.$element.attr("aria-describedby",g),this.options.animation&&f.addClass("fade");var h="function"==typeof this.options.placement?this.options.placement.call(this,f[0],this.$element[0]):this.options.placement,i=/\s?auto?\s?/i,j=i.test(h);j&&(h=h.replace(i,"")||"top"),f.detach().css({top:0,left:0,display:"block"}).addClass(h).data("bs."+this.type,this),this.options.container?f.appendTo(this.options.container):f.insertAfter(this.$element),this.$element.trigger("inserted.bs."+this.type);var k=this.getPosition(),l=f[0].offsetWidth,m=f[0].offsetHeight;if(j){var n=h,o=this.getPosition(this.$viewport);h="bottom"==h&&k.bottom+m>o.bottom?"top":"top"==h&&k.top-mo.width?"left":"left"==h&&k.left-lg.top+g.height&&(e.top=g.top+g.height-i)}else{var j=b.left-f,k=b.left+f+c;jg.right&&(e.left=g.left+g.width-k)}return e},c.prototype.getTitle=function(){var a,b=this.$element,c=this.options;return a=b.attr("data-original-title")||("function"==typeof c.title?c.title.call(b[0]):c.title)},c.prototype.getUID=function(a){do a+=~~(1e6*Math.random());while(document.getElementById(a));return a},c.prototype.tip=function(){if(!this.$tip&&(this.$tip=a(this.options.template),1!=this.$tip.length))throw new Error(this.type+" `template` option must consist of exactly 1 top-level element!");return this.$tip},c.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".tooltip-arrow")},c.prototype.enable=function(){this.enabled=!0},c.prototype.disable=function(){this.enabled=!1},c.prototype.toggleEnabled=function(){this.enabled=!this.enabled},c.prototype.toggle=function(b){var c=this;b&&(c=a(b.currentTarget).data("bs."+this.type),c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c))),b?(c.inState.click=!c.inState.click,c.isInStateTrue()?c.enter(c):c.leave(c)):c.tip().hasClass("in")?c.leave(c):c.enter(c)},c.prototype.destroy=function(){var a=this;clearTimeout(this.timeout),this.hide(function(){a.$element.off("."+a.type).removeData("bs."+a.type),a.$tip&&a.$tip.detach(),a.$tip=null,a.$arrow=null,a.$viewport=null,a.$element=null})};var d=a.fn.tooltip;a.fn.tooltip=b,a.fn.tooltip.Constructor=c,a.fn.tooltip.noConflict=function(){return a.fn.tooltip=d,this}}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.popover"),f="object"==typeof b&&b;!e&&/destroy|hide/.test(b)||(e||d.data("bs.popover",e=new c(this,f)),"string"==typeof b&&e[b]())})}var c=function(a,b){this.init("popover",a,b)};if(!a.fn.tooltip)throw new Error("Popover requires tooltip.js");c.VERSION="3.3.7",c.DEFAULTS=a.extend({},a.fn.tooltip.Constructor.DEFAULTS,{placement:"right",trigger:"click",content:"",template:''}),c.prototype=a.extend({},a.fn.tooltip.Constructor.prototype),c.prototype.constructor=c,c.prototype.getDefaults=function(){return c.DEFAULTS},c.prototype.setContent=function(){var a=this.tip(),b=this.getTitle(),c=this.getContent();a.find(".popover-title")[this.options.html?"html":"text"](b),a.find(".popover-content").children().detach().end()[this.options.html?"string"==typeof c?"html":"append":"text"](c),a.removeClass("fade top bottom left right in"),a.find(".popover-title").html()||a.find(".popover-title").hide()},c.prototype.hasContent=function(){return this.getTitle()||this.getContent()},c.prototype.getContent=function(){var a=this.$element,b=this.options;return a.attr("data-content")||("function"==typeof b.content?b.content.call(a[0]):b.content)},c.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".arrow")};var d=a.fn.popover;a.fn.popover=b,a.fn.popover.Constructor=c,a.fn.popover.noConflict=function(){return a.fn.popover=d,this}}(jQuery),+function(a){"use strict";function b(c,d){this.$body=a(document.body),this.$scrollElement=a(a(c).is(document.body)?window:c),this.options=a.extend({},b.DEFAULTS,d),this.selector=(this.options.target||"")+" .nav li > a",this.offsets=[],this.targets=[],this.activeTarget=null,this.scrollHeight=0,this.$scrollElement.on("scroll.bs.scrollspy",a.proxy(this.process,this)),this.refresh(),this.process()}function c(c){return this.each(function(){var d=a(this),e=d.data("bs.scrollspy"),f="object"==typeof c&&c;e||d.data("bs.scrollspy",e=new b(this,f)),"string"==typeof c&&e[c]()})}b.VERSION="3.3.7",b.DEFAULTS={offset:10},b.prototype.getScrollHeight=function(){return this.$scrollElement[0].scrollHeight||Math.max(this.$body[0].scrollHeight,document.documentElement.scrollHeight)},b.prototype.refresh=function(){var b=this,c="offset",d=0;this.offsets=[],this.targets=[],this.scrollHeight=this.getScrollHeight(),a.isWindow(this.$scrollElement[0])||(c="position",d=this.$scrollElement.scrollTop()),this.$body.find(this.selector).map(function(){var b=a(this),e=b.data("target")||b.attr("href"),f=/^#./.test(e)&&a(e);return f&&f.length&&f.is(":visible")&&[[f[c]().top+d,e]]||null}).sort(function(a,b){return a[0]-b[0]}).each(function(){b.offsets.push(this[0]),b.targets.push(this[1])})},b.prototype.process=function(){var a,b=this.$scrollElement.scrollTop()+this.options.offset,c=this.getScrollHeight(),d=this.options.offset+c-this.$scrollElement.height(),e=this.offsets,f=this.targets,g=this.activeTarget;if(this.scrollHeight!=c&&this.refresh(),b>=d)return g!=(a=f[f.length-1])&&this.activate(a);if(g&&b=e[a]&&(void 0===e[a+1]||b .dropdown-menu > .active").removeClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!1),b.addClass("active").find('[data-toggle="tab"]').attr("aria-expanded",!0),h?(b[0].offsetWidth,b.addClass("in")):b.removeClass("fade"),b.parent(".dropdown-menu").length&&b.closest("li.dropdown").addClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!0),e&&e()}var g=d.find("> .active"),h=e&&a.support.transition&&(g.length&&g.hasClass("fade")||!!d.find("> .fade").length);g.length&&h?g.one("bsTransitionEnd",f).emulateTransitionEnd(c.TRANSITION_DURATION):f(),g.removeClass("in")};var d=a.fn.tab;a.fn.tab=b,a.fn.tab.Constructor=c,a.fn.tab.noConflict=function(){return a.fn.tab=d,this};var e=function(c){c.preventDefault(),b.call(a(this),"show")};a(document).on("click.bs.tab.data-api",'[data-toggle="tab"]',e).on("click.bs.tab.data-api",'[data-toggle="pill"]',e)}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.affix"),f="object"==typeof b&&b;e||d.data("bs.affix",e=new c(this,f)),"string"==typeof b&&e[b]()})}var c=function(b,d){this.options=a.extend({},c.DEFAULTS,d),this.$target=a(this.options.target).on("scroll.bs.affix.data-api",a.proxy(this.checkPosition,this)).on("click.bs.affix.data-api",a.proxy(this.checkPositionWithEventLoop,this)),this.$element=a(b),this.affixed=null,this.unpin=null,this.pinnedOffset=null,this.checkPosition()};c.VERSION="3.3.7",c.RESET="affix affix-top affix-bottom",c.DEFAULTS={offset:0,target:window},c.prototype.getState=function(a,b,c,d){var e=this.$target.scrollTop(),f=this.$element.offset(),g=this.$target.height();if(null!=c&&"top"==this.affixed)return e=a-d&&"bottom"},c.prototype.getPinnedOffset=function(){if(this.pinnedOffset)return this.pinnedOffset;this.$element.removeClass(c.RESET).addClass("affix");var a=this.$target.scrollTop(),b=this.$element.offset();return this.pinnedOffset=b.top-a},c.prototype.checkPositionWithEventLoop=function(){setTimeout(a.proxy(this.checkPosition,this),1)},c.prototype.checkPosition=function(){if(this.$element.is(":visible")){var b=this.$element.height(),d=this.options.offset,e=d.top,f=d.bottom,g=Math.max(a(document).height(),a(document.body).height());"object"!=typeof d&&(f=e=d),"function"==typeof e&&(e=d.top(this.$element)),"function"==typeof f&&(f=d.bottom(this.$element));var h=this.getState(g,b,e,f);if(this.affixed!=h){null!=this.unpin&&this.$element.css("top","");var i="affix"+(h?"-"+h:""),j=a.Event(i+".bs.affix");if(this.$element.trigger(j),j.isDefaultPrevented())return;this.affixed=h,this.unpin="bottom"==h?this.getPinnedOffset():null,this.$element.removeClass(c.RESET).addClass(i).trigger(i.replace("affix","affixed")+".bs.affix")}"bottom"==h&&this.$element.offset({top:g-b-f})}};var d=a.fn.affix;a.fn.affix=b,a.fn.affix.Constructor=c,a.fn.affix.noConflict=function(){return a.fn.affix=d,this},a(window).on("load",function(){a('[data-spy="affix"]').each(function(){var c=a(this),d=c.data();d.offset=d.offset||{},null!=d.offsetBottom&&(d.offset.bottom=d.offsetBottom),null!=d.offsetTop&&(d.offset.top=d.offsetTop),b.call(c,d)})})}(jQuery); !function(e){e(["jquery"],function(e){return function(){function t(e,t,n){return g({type:O.error,iconClass:m().iconClasses.error,message:e,optionsOverride:n,title:t})}function n(t,n){return t||(t=m()),v=e("#"+t.containerId),v.length?v:(n&&(v=d(t)),v)}function o(e,t,n){return g({type:O.info,iconClass:m().iconClasses.info,message:e,optionsOverride:n,title:t})}function s(e){C=e}function i(e,t,n){return g({type:O.success,iconClass:m().iconClasses.success,message:e,optionsOverride:n,title:t})}function a(e,t,n){return g({type:O.warning,iconClass:m().iconClasses.warning,message:e,optionsOverride:n,title:t})}function r(e,t){var o=m();v||n(o),u(e,o,t)||l(o)}function c(t){var o=m();return v||n(o),t&&0===e(":focus",t).length?void h(t):void(v.children().length&&v.remove())}function l(t){for(var n=v.children(),o=n.length-1;o>=0;o--)u(e(n[o]),t)}function u(t,n,o){var s=!(!o||!o.force)&&o.force;return!(!t||!s&&0!==e(":focus",t).length)&&(t[n.hideMethod]({duration:n.hideDuration,easing:n.hideEasing,complete:function(){h(t)}}),!0)}function d(t){return v=e("
").attr("id",t.containerId).addClass(t.positionClass),v.appendTo(e(t.target)),v}function p(){return{tapToDismiss:!0,toastClass:"toast",containerId:"toast-container",debug:!1,showMethod:"fadeIn",showDuration:300,showEasing:"swing",onShown:void 0,hideMethod:"fadeOut",hideDuration:1e3,hideEasing:"swing",onHidden:void 0,closeMethod:!1,closeDuration:!1,closeEasing:!1,closeOnHover:!0,extendedTimeOut:1e3,iconClasses:{error:"toast-error",info:"toast-info",success:"toast-success",warning:"toast-warning"},iconClass:"toast-info",positionClass:"toast-top-right",timeOut:5e3,titleClass:"toast-title",messageClass:"toast-message",escapeHtml:!1,target:"body",closeHtml:'',closeClass:"toast-close-button",newestOnTop:!0,preventDuplicates:!1,progressBar:!1,progressClass:"toast-progress",rtl:!1}}function f(e){C&&C(e)}function g(t){function o(e){return null==e&&(e=""),e.replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">")}function s(){c(),u(),d(),p(),g(),C(),l(),i()}function i(){var e="";switch(t.iconClass){case"toast-success":case"toast-info":e="polite";break;default:e="assertive"}I.attr("aria-live",e)}function a(){E.closeOnHover&&I.hover(H,D),!E.onclick&&E.tapToDismiss&&I.click(b),E.closeButton&&j&&j.click(function(e){e.stopPropagation?e.stopPropagation():void 0!==e.cancelBubble&&e.cancelBubble!==!0&&(e.cancelBubble=!0),E.onCloseClick&&E.onCloseClick(e),b(!0)}),E.onclick&&I.click(function(e){E.onclick(e),b()})}function r(){I.hide(),I[E.showMethod]({duration:E.showDuration,easing:E.showEasing,complete:E.onShown}),E.timeOut>0&&(k=setTimeout(b,E.timeOut),F.maxHideTime=parseFloat(E.timeOut),F.hideEta=(new Date).getTime()+F.maxHideTime,E.progressBar&&(F.intervalId=setInterval(x,10)))}function c(){t.iconClass&&I.addClass(E.toastClass).addClass(y)}function l(){E.newestOnTop?v.prepend(I):v.append(I)}function u(){if(t.title){var e=t.title;E.escapeHtml&&(e=o(t.title)),M.append(e).addClass(E.titleClass),I.append(M)}}function d(){if(t.message){var e=t.message;E.escapeHtml&&(e=o(t.message)),B.append(e).addClass(E.messageClass),I.append(B)}}function p(){E.closeButton&&(j.addClass(E.closeClass).attr("role","button"),I.prepend(j))}function g(){E.progressBar&&(q.addClass(E.progressClass),I.prepend(q))}function C(){E.rtl&&I.addClass("rtl")}function O(e,t){if(e.preventDuplicates){if(t.message===w)return!0;w=t.message}return!1}function b(t){var n=t&&E.closeMethod!==!1?E.closeMethod:E.hideMethod,o=t&&E.closeDuration!==!1?E.closeDuration:E.hideDuration,s=t&&E.closeEasing!==!1?E.closeEasing:E.hideEasing;if(!e(":focus",I).length||t)return clearTimeout(F.intervalId),I[n]({duration:o,easing:s,complete:function(){h(I),clearTimeout(k),E.onHidden&&"hidden"!==P.state&&E.onHidden(),P.state="hidden",P.endTime=new Date,f(P)}})}function D(){(E.timeOut>0||E.extendedTimeOut>0)&&(k=setTimeout(b,E.extendedTimeOut),F.maxHideTime=parseFloat(E.extendedTimeOut),F.hideEta=(new Date).getTime()+F.maxHideTime)}function H(){clearTimeout(k),F.hideEta=0,I.stop(!0,!0)[E.showMethod]({duration:E.showDuration,easing:E.showEasing})}function x(){var e=(F.hideEta-(new Date).getTime())/F.maxHideTime*100;q.width(e+"%")}var E=m(),y=t.iconClass||E.iconClass;if("undefined"!=typeof t.optionsOverride&&(E=e.extend(E,t.optionsOverride),y=t.optionsOverride.iconClass||y),!O(E,t)){T++,v=n(E,!0);var k=null,I=e("
"),M=e("
"),B=e("
"),q=e("
"),j=e(E.closeHtml),F={intervalId:null,hideEta:null,maxHideTime:null},P={toastId:T,state:"visible",startTime:new Date,options:E,map:t};return s(),r(),a(),f(P),E.debug&&console&&console.log(P),I}}function m(){return e.extend({},p(),b.options)}function h(e){v||(v=n()),e.is(":visible")||(e.remove(),e=null,0===v.children().length&&(v.remove(),w=void 0))}var v,C,w,T=0,O={error:"error",info:"info",success:"success",warning:"warning"},b={clear:r,remove:c,error:t,getContainer:n,info:o,options:{},subscribe:s,success:i,version:"2.1.3",warning:a};return b}()})}("function"==typeof define&&define.amd?define:function(e,t){"undefined"!=typeof module&&module.exports?module.exports=t(require("jquery")):window.toastr=t(window.jQuery)}); (function(){"use strict";function e(){}function t(e,t){for(var n=e.length;n--;)if(e[n].listener===t)return n;return-1}function n(e){return function(){return this[e].apply(this,arguments)}}var i=e.prototype,r=this,s=r.EventEmitter;i.getListeners=function(e){var t,n,i=this._getEvents();if("object"==typeof e){t={};for(n in i)i.hasOwnProperty(n)&&e.test(n)&&(t[n]=i[n])}else t=i[e]||(i[e]=[]);return t},i.flattenListeners=function(e){var t,n=[];for(t=0;ta){for(var f=c,g=a,l=f.split("").reverse(),c=[],m,q,n,r=0,h=Math.ceil(f.length/g);r